package br.com.srv.util;

import java.text.ParseException;
import java.util.Date;
import java.util.Map;

import org.displaytag.decorator.TableDecorator;

public class IndexTableDecorator extends TableDecorator {
	private static long VERDE_INI = 0;

	private static long VERDE_FIM = 1000 * 60 * 5; // 5 minutos
	
	private static long AMARELO_INI = 1000 * 60 * 5; // 5 minutos
	
	private static long AMARELO_FIM = 1000 * 60 * 35; // 35 minutos
	
	private static long VERMELHO_INI = 1000 * 60 * 35; // 35 minutos
	
	private static long VERMELHO_FIM = 1000 * 60 * 60 * 24; // 24 horas
	
	private static long CINZA_INI = 1000 * 60 * 60 * 24; // 24 horas
	
	private static String VERDE = "verde";

	private static String AMARELO = "amarelo";
	
	private static String VERMELHO = "vermelho";
	
	private static String CINZA = "cinza";
	
	public String addRowClass() {
		try {
			String classe = "";
			String dataString = ((Map) getCurrentRowObject()).get("DATE_TIME").toString();
			Date data = DateHelper.parseDate(DateHelper.REPORT_DATE_DEFAULT, dataString);
			Date today = DateHelper.getToday();
			long elapsedTime = DateHelper.getElapsedTime(data, today);
			if (elapsedTime >= VERDE_INI && elapsedTime < VERDE_FIM) {
				classe = VERDE;
			} else if (elapsedTime >= AMARELO_INI && elapsedTime < AMARELO_FIM) {
				classe = AMARELO;
			} else if (elapsedTime >= VERMELHO_INI && elapsedTime < VERMELHO_FIM) {
				classe = VERMELHO;
			} else if (elapsedTime >= CINZA_INI) {
				classe = CINZA;
			}
			return classe;
		} catch (ParseException e) {
			return "";
		}
	}
}
